Imports Clo = Enhancements.Core.Logging
Imports Gen = System.Collections.Generic
Imports Iou = System.IO
Imports Ref = System.Reflection
Imports Reg = System.Text.RegularExpressions
Imports Sys = System
Imports Tex = System.Text
Imports Xsd = System.Xml.Schema
Imports W3c = System.Xml

Namespace Enhancements.Basic.Primitives
    ''' <summary>Base class for all possible formats. It is not intended for the common developer to inherit from it.</summary>
    <Serializable(), DebuggerStepThrough()> _
    Public MustInherit Class DateTimeFormat

        Friend Sub New()
        End Sub

        ''' <summary>Builds a format expression according to the instance values.</summary>
        ''' <returns> </returns>
        Public MustOverride Function ExpressionBuild() As System.String

        ''' <summary>Formats a supplied value according to the instance values.</summary>
        ''' <param name="_value">Value to format.</param>
        ''' <returns> </returns>
        Public MustOverride Function Format(ByVal _value As Sys.DateTime) As System.String

        Friend Const ___ExpressionPrefix As System.Char = "{"c
        Friend Const ___ExpressionSuffix As System.Char = "}"c
        Friend Const ___ExpressionSeparatorTitleProperties As System.Char = ":"c
        Friend Const ___ExpressionSeparatorProperties As System.Char = ";"c
        Friend Const ___ExpressionSeparatorPropertyNameValue As System.Char = "="c

    End Class
End Namespace
